package com.labManage.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

@Controller
public class PageController {

    @Autowired
    private HttpServletRequest request;

    /***************************************************************************************************************************
     *  @fn             doLogin
     *  @brief          页面跳转
     *  @type           非静态方法
     *  @detail         当请求访问/doLogin时跳转到login.html页面
     *  @param[in]      无
     *  @return         String        返回登录页面的路径，此页面不在WEB-INF目录下，所以按照绕过视图解析器的要求撰写
     *  @author         杜健华，杜志华
     *  @date           2021.06.18
     ****************************************************************************************************************************/
    @RequestMapping("/user/doLogin")
    public String doLogin()
    {
        return "login";
    }

    /***************************************************************************************************************************
     *  @fn             doRegister
     *  @brief          页面跳转
     *  @type           非静态方法
     *  @detail         当请求访问/doRegister时跳转到register.html页面
     *  @param[in]      无
     *  @return         String        返回注册页面的路径，此页面不在WEB-INF目录下，所以按照绕过视图解析器的要求撰写
     *  @author         杜健华，杜志华
     *  @date           2021.06.18
     ****************************************************************************************************************************/
    @RequestMapping("/doRegister")
    public String doRegister()
    {
        return "forward:register.jsp";
    }

    /***************************************************************************************************************************
     *  @fn             doIndex
     *  @brief          页面跳转
     *  @type           非静态方法
     *  @detail         当请求访问/doIndex时跳转到index.html页面
     *  @param[in]      无
     *  @return         String        返回主页面的路径，此页面在WEB-INF目录下，所以按照视图解析器的要求撰写
     *  @author         杜健华，杜志华
     *  @date           2021.06.18
     ****************************************************************************************************************************/
    @RequestMapping("/doIndex")
    public String doIndex() {
        return "index";
    }

    /***************************************************************************************************************************
     *  @fn             doAddKinds
     *  @brief          页面跳转
     *  @type           非静态方法
     *  @detail         当请求访问/doEditKinds/{editType}时跳转到edit_kinds.html页面
     *  @param[in]      无
     *  @return         String        返回添加种类的页面路径，此页面在WEB-INF目录下，所以按照视图解析器的要求撰写
     *  @author         杜健华，杜志华
     *  @date           2021.06.21
     ****************************************************************************************************************************/
    @RequestMapping("/doEditKinds/{editType}")
    public String doAddKinds(@PathVariable("editType")String editType){

        return "edit_kinds";
    }

    /***************************************************************************************************************************
     *  @fn             doKindsDetail
     *  @brief          页面跳转
     *  @type           非静态方法
     *  @detail         当请求访问/doKindsDetail时跳转到kindsDetail.html页面
     *  @param[in]      无
     *  @return         String        返回种类详情的页面路径，此页面在WEB-INF目录下，所以按照视图解析器的要求撰写
     *  @author         杜健华，杜志华
     *  @date           2021.06.21
     ****************************************************************************************************************************/
    @RequestMapping("/doKindsDetail")
    public String doKindsDetail(String kindsType){
        if(null!=kindsType){
            HttpSession session = request.getSession();
            session.setAttribute("kindsType",kindsType);
        }
        return "kindsDetail";
    }

    @RequestMapping(value = "/doUserList")
    public String doUserInfo(){
        return "user_list";
    }

    @RequestMapping("/doModifyUserInfo")
    public String doModifyUserInfo(){
        return "modify_user_info";
    }

    @RequestMapping("/doBorrowInfo")
    public String doBorrowInfo(){
        return "borrow_list";
    }

    @RequestMapping("/doRoleList")
    public String doRoleList(){
        return "role_list";
    }

    @RequestMapping("/doModifyRoleInfo")
    public String doModifyRoleInfo(){
        return "modify_role_info";
    }

    @RequestMapping("/doModifyPwd")
    public String doModifyPwd(){
        return "modify_password";
    }

    @RequestMapping("/doPersonInfo")
    public String doPersonInfo(){
        return "get_person_info";
    }

    @RequestMapping("/doAddRoleInfo")
    public String doAddRoleInfo(){
        return "add_role_info";
    }

    @RequestMapping("/doPermitionList")
    public String doPermitionList(){
        return "permition_list";
    }
    @RequestMapping("/doGoodsList")
    public String doGoodsList(){
        return "goods_list";
    }

    @RequestMapping("/doModifyGoodsInfo")
    public String doModifyGoodsInfo(){
        return "modify_goods_info";
    }

    @RequestMapping("/doAddPermitionInfo")
    public String doAddPermitionInfo(){
        return "add_permition_info";
    }

    @RequestMapping("/doWelcome")
    public String doWelcome(){
        return "welcome";
    }

    @RequestMapping("/doModifyPermitionInfo")
    public String doModifyPermitionInfo(){
        return "modify_permition_info";
    }

    @RequestMapping("/doSelectBorrowNum")
    public String doSelectBorrowNum(){
        return "select_borrow_num";
    }

    @RequestMapping("/doAddGoodsInfo")
    public String doAddGoodsInfo(){
        return "add_goods_info";
    }

    @RequestMapping("/doLogList")
    public String doLogList(){
        return "log_list";
    }

    @RequestMapping("/doRefuse")
    public String doRefuse(){return "refuse";}

    @RequestMapping("doKindsList")
    public String doKindsList(){
        return "kinds_list";
    }
    @RequestMapping("doAddKindsInfo")
    public String doAddKindsInfo() {
        return "add_kinds_info";
    }

    @RequestMapping("doModifyKindsInfo")
    public String doModifyKindsInfo() {
        return "modify_kinds_info";
    }
}
